set.seed(42)
library(dplyr)
setwd("~/Projects/companies-bankruptcy-forecast/src")
Read all the data
bankruptcy_data <- read.csv('../data/bankruptcy_Train.csv')
head(bankruptcy_data)
summary(bankruptcy_data)
Attr1 Attr2 Attr3 Attr4
Min. : -9.47479 Min. :-140.60456 Min. :-25.597146 Min. :-0.38164
1st Qu.: -0.07978 1st Qu.: -0.05560 1st Qu.: -0.516971 1st Qu.:-0.19231
Median : -0.01920 Median : 0.00025 Median : 0.003186 Median :-0.11797
Mean : 0.00795 Mean : -0.00714 Mean : -0.003544 Mean : 0.00500
3rd Qu.: 0.08122 3rd Qu.: 0.05696 3rd Qu.: 0.585722 3rd Qu.: 0.02271
Max. :137.55787 Max. : 2.00493 Max. : 3.324327 Max. :60.82546
Attr5 Attr6 Attr7 Attr8
Min. :-138.72001 Min. :-26.24956 Min. :-141.17661 Min. :-0.96602
1st Qu.: 0.00680 1st Qu.: -0.01605 1st Qu.: -0.00802 1st Qu.:-0.44567
Median : 0.00730 Median : -0.01605 Median : 0.00428 Median :-0.26015
Mean : -0.00469 Mean : 0.00146 Mean : -0.00696 Mean : 0.00905
3rd Qu.: 0.00775 3rd Qu.: 0.01603 3rd Qu.: 0.02422 3rd Qu.: 0.09887
Max. : 11.55624 Max. :121.35474 Max. : 0.62309 Max. :47.50446
Attr9 Attr10 Attr11 Attr12
Min. :-1.29434 Min. : -2.52849 Min. :-97.17275 Min. :-77.27959
1st Qu.:-0.38818 1st Qu.: -0.06858 1st Qu.: -0.30578 1st Qu.: -0.16155
Median :-0.30784 Median : 0.00025 Median : -0.05133 Median : -0.09460
Mean : 0.00676 Mean : 0.00746 Mean : -0.00209 Mean : -0.00650
3rd Qu.: 0.15664 3rd Qu.: 0.07004 3rd Qu.: 0.31693 3rd Qu.: 0.05667
Max. :62.93640 Max. :140.12330 Max. : 11.36780 Max. : 15.02956
Attr13 Attr14 Attr15 Attr16
Min. :-4.25256 Min. :-141.17661 Min. :-64.25595 Min. :-7.24322
1st Qu.:-0.01219 1st Qu.: -0.00802 1st Qu.: -0.02051 1st Qu.:-0.42562
Median :-0.01126 Median : 0.00429 Median : -0.01194 Median :-0.24440
Mean :-0.00563 Mean : -0.00696 Mean : -0.00499 Mean : 0.00457
3rd Qu.:-0.00996 3rd Qu.: 0.02423 3rd Qu.: 0.00500 3rd Qu.: 0.11749
Max. :62.37751 Max. : 0.62309 Max. : 92.51573 Max. :30.01611
Attr17 Attr18 Attr19 Attr20
Min. :-1.01052 Min. :-139.01042 Min. :-98.84424 Min. :-0.07366
1st Qu.:-0.44571 1st Qu.: -0.01003 1st Qu.: 0.00136 1st Qu.:-0.05052
Median :-0.26087 Median : 0.00208 Median : 0.01653 Median :-0.02890
Mean : 0.00856 Mean : -0.00765 Mean : -0.00397 Mean :-0.00733
3rd Qu.: 0.09559 3rd Qu.: 0.02172 3rd Qu.: 0.04223 3rd Qu.: 0.00122
Max. :45.28443 Max. : 13.49006 Max. : 1.34996 Max. :47.02586
Attr21 Attr22 Attr23 Attr24
Min. : -0.02006 Min. :-100.67115 Min. :-99.02106 Min. :-89.68945
1st Qu.: -0.01622 1st Qu.: -0.33472 1st Qu.: 0.00436 1st Qu.: -0.03950
Median : -0.01569 Median : -0.07019 Median : 0.01734 Median : -0.00487
Mean : 0.01033 Mean : -0.00458 Mean : -0.00328 Mean : -0.01159
3rd Qu.: -0.01503 3rd Qu.: 0.29828 3rd Qu.: 0.03938 3rd Qu.: 0.04440
Max. :123.12321 Max. : 9.77809 Max. : 1.35620 Max. : 28.45007
Attr25 Attr26 Attr27 Attr28
Min. : -7.49353 Min. :-7.83437 Min. : -0.18427 Min. :-2.38889
1st Qu.: -0.17672 1st Qu.:-0.40938 1st Qu.: -0.00998 1st Qu.:-0.02109
Median : 0.02746 Median :-0.23293 Median : -0.00995 Median :-0.01824
Mean : 0.00658 Mean : 0.00499 Mean : 0.00505 Mean :-0.00324
3rd Qu.: 0.21743 3rd Qu.: 0.10851 3rd Qu.: -0.00986 3rd Qu.:-0.01315
Max. :130.85159 Max. :26.31755 Max. :133.59519 Max. :57.68191
Attr29 Attr30 Attr31 Attr32
Min. :-7.035371 Min. :-0.23361 Min. :-92.35599 Min. :-0.03522
1st Qu.:-0.639265 1st Qu.:-0.02310 1st Qu.: -0.00173 1st Qu.:-0.02433
Median :-0.046048 Median :-0.01903 Median : 0.01612 Median :-0.01982
Mean : 0.000412 Mean :-0.00759 Mean : -0.00328 Mean :-0.00688
3rd Qu.: 0.602427 3rd Qu.:-0.01301 3rd Qu.: 0.04370 3rd Qu.:-0.01319
Max. : 4.926552 Max. :25.00019 Max. : 2.98068 Max. :35.01931
Attr33 Attr34 Attr35 Attr36
Min. :-3.44220 Min. :-2.41553 Min. :-81.57126 Min. :-1.49579
1st Qu.:-0.38248 1st Qu.:-0.61725 1st Qu.: -0.36291 1st Qu.:-0.59458
Median :-0.18186 Median :-0.31256 Median : -0.08077 Median :-0.19602
Mean : 0.02274 Mean : 0.01194 Mean : -0.00410 Mean : 0.00934
3rd Qu.: 0.13744 3rd Qu.: 0.30927 3rd Qu.: 0.33797 3rd Qu.: 0.35206
Max. :67.72026 Max. :29.36014 Max. : 11.90836 Max. :54.77160
Attr37 Attr38 Attr39 Attr40
Min. : -0.03540 Min. : -0.95328 Min. :-86.74667 Min. :-3.32575
1st Qu.: -0.03438 1st Qu.: -0.04530 1st Qu.: -0.01169 1st Qu.:-0.13731
Median : -0.03377 Median : 0.00095 Median : 0.01129 Median :-0.10939
Mean : 0.00543 Mean : 0.00747 Mean : -0.00088 Mean :-0.00199
3rd Qu.: -0.03113 3rd Qu.: 0.04301 3rd Qu.: 0.04698 3rd Qu.:-0.02434
Max. :118.20801 Max. :140.88439 Max. : 1.73931 Max. :50.83038
Attr41 Attr42 Attr43 Attr44
Min. :-0.366493 Min. :-91.70980 Min. :-0.032807 Min. :-0.022776
1st Qu.:-0.007438 1st Qu.: -0.00920 1st Qu.:-0.020529 1st Qu.:-0.016182
Median :-0.007407 Median : 0.00977 Median :-0.015198 Median :-0.012846
Mean :-0.007309 Mean : -0.00506 Mean :-0.010585 Mean :-0.009997
3rd Qu.:-0.007351 3rd Qu.: 0.03621 3rd Qu.:-0.008682 3rd Qu.:-0.008601
Max. : 0.189483 Max. : 25.38972 Max. :11.279457 Max. : 4.355692
Attr45 Attr46 Attr47 Attr48
Min. :-140.72507 Min. :-2.56878 Min. :-0.07011 Min. :-88.95798
1st Qu.: 0.00385 1st Qu.:-0.18380 1st Qu.:-0.03502 1st Qu.: -0.22455
Median : 0.00429 Median :-0.10800 Median :-0.02637 Median : -0.00436
Mean : -0.00614 Mean : 0.00311 Mean :-0.00467 Mean : -0.00641
3rd Qu.: 0.00529 3rd Qu.: 0.01823 3rd Qu.:-0.01454 3rd Qu.: 0.29961
Max. : 4.52998 Max. :58.06043 Max. :66.35172 Max. : 8.01754
Attr49 Attr50 Attr51 Attr52
Min. :-86.86652 Min. :-0.99149 Min. :-1.56028 Min. :-0.03462
1st Qu.: 0.00594 1st Qu.:-0.47916 1st Qu.:-0.67117 1st Qu.:-0.02372
Median : 0.02456 Median :-0.23076 Median :-0.14449 Median :-0.01924
Mean : -0.00064 Mean : 0.00098 Mean :-0.00185 Mean :-0.00729
3rd Qu.: 0.04744 3rd Qu.: 0.13998 3rd Qu.: 0.49283 3rd Qu.:-0.01262
Max. : 1.30222 Max. :24.14990 Max. :46.28028 Max. :35.09456
Attr53 Attr54 Attr55 Attr56
Min. :-14.895609 Min. :-2.44303 Min. :-19.007973 Min. :-1.657288
1st Qu.: -0.029205 1st Qu.:-0.02077 1st Qu.: -0.127228 1st Qu.: 0.009315
Median : -0.018638 Median :-0.01777 Median : -0.101706 Median : 0.009838
Mean : -0.007953 Mean :-0.00311 Mean : -0.008807 Mean : 0.009804
3rd Qu.: -0.004382 3rd Qu.:-0.01274 3rd Qu.: -0.021740 3rd Qu.: 0.010693
Max. : 16.960384 Max. :58.49808 Max. : 22.759195 Max. : 0.036727
Attr57 Attr58 Attr59 Attr60
Min. :-42.38124 Min. :-0.037484 Min. :-3.218490 Min. : -0.04860
1st Qu.: 0.00320 1st Qu.:-0.010766 1st Qu.:-0.022740 1st Qu.: -0.04342
Median : 0.01001 Median :-0.009924 Median :-0.020438 Median : -0.03993
Mean : 0.00521 Mean :-0.009751 Mean :-0.002655 Mean : 0.00455
3rd Qu.: 0.01990 3rd Qu.:-0.009416 3rd Qu.:-0.014401 3rd Qu.: -0.03182
Max. : 37.40531 Max. : 2.551674 Max. :27.969785 Max. :117.34107
Attr61 Attr62 Attr63 Attr64
Min. :-0.41252 Min. :-0.022204 Min. :-0.74330 Min. :-0.05097
1st Qu.:-0.22124 1st Qu.:-0.016847 1st Qu.:-0.37138 1st Qu.:-0.04160
Median :-0.13965 Median :-0.013821 Median :-0.18031 Median :-0.03432
Mean : 0.01433 Mean :-0.006864 Mean : 0.02075 Mean :-0.00398
3rd Qu.:-0.00221 3rd Qu.:-0.009476 3rd Qu.: 0.13324 3rd Qu.:-0.02051
Max. :59.13916 Max. :23.970250 Max. :62.52724 Max. :90.77469
class
Min. :0.0000
1st Qu.:0.0000
Median :0.0000
Mean :0.0203
3rd Qu.:0.0000
Max. :1.0000
Pre-process : Scale the data
na.omit(bankruptcy_data)
# removing those observation rows with 0 in any of the variables
for (i in 1:64) {
bankruptcy_data <- bankruptcy_data[which(bankruptcy_data[, i] != 0), ]
}
dim(bankruptcy_data)
[1] 10000 65
# scale the covariates for easier comparison of coefficient posteriors
for (i in 1:64) {
bankruptcy_data[i] <- scale(bankruptcy_data[i])
}
dim(bankruptcy_data)
[1] 10000 65
Make “class” to be factor type and create x and y variables
bankruptcy_data$class <- factor(bankruptcy_data$class)
# preparing the inputs
x <- model.matrix(class ~ . - 1, data = bankruptcy_data)
y <- bankruptcy_data$class
dim(bankruptcy_data)
[1] 10000 65
head(bankruptcy_data)
Take smaller dataset sample for development purpose
bankruptcy_small <- bankruptcy_data %>% group_by(class) %>% sample_frac(.08)
str(bankruptcy_small)
tibble [800 × 65] (S3: grouped_df/tbl_df/tbl/data.frame)
$ Attr1 : num [1:800, 1] 0.0952 -0.0194 -0.0431 0.0256 0.0376 ...
..- attr(*, "scaled:center")= Named num 0.00795
.. ..- attr(*, "names")= chr "Attr1"
..- attr(*, "scaled:scale")= Named num 1.4
.. ..- attr(*, "names")= chr "Attr1"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr1"
$ Attr2 : num [1:800, 1] -0.01467 -0.00691 0.01316 0.07909 -0.07227 ...
..- attr(*, "scaled:center")= Named num -0.00714
.. ..- attr(*, "names")= chr "Attr2"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr2"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr2"
$ Attr3 : num [1:800, 1] 0.0934 0.0229 0.6315 -1.8312 -0.1651 ...
..- attr(*, "scaled:center")= Named num -0.00354
.. ..- attr(*, "names")= chr "Attr3"
..- attr(*, "scaled:scale")= Named num 1.02
.. ..- attr(*, "names")= chr "Attr3"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr3"
$ Attr4 : num [1:800, 1] -0.107 -0.154 0.156 -0.31 -0.116 ...
..- attr(*, "scaled:center")= Named num 0.005
.. ..- attr(*, "names")= chr "Attr4"
..- attr(*, "scaled:scale")= Named num 0.908
.. ..- attr(*, "names")= chr "Attr4"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr4"
$ Attr5 : num [1:800, 1] 0.00869 0.00871 0.00929 0.00789 0.00855 ...
..- attr(*, "scaled:center")= Named num -0.00469
.. ..- attr(*, "names")= chr "Attr5"
..- attr(*, "scaled:scale")= Named num 1.39
.. ..- attr(*, "names")= chr "Attr5"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr5"
$ Attr6 : num [1:800, 1] 0.0416 -0.0136 -0.0136 -0.0196 0.0244 ...
..- attr(*, "scaled:center")= Named num 0.00146
.. ..- attr(*, "names")= chr "Attr6"
..- attr(*, "scaled:scale")= Named num 1.29
.. ..- attr(*, "names")= chr "Attr6"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr6"
$ Attr7 : num [1:800, 1] 0.0259 0.00823 0.00221 0.01397 0.01811 ...
..- attr(*, "scaled:center")= Named num -0.00696
.. ..- attr(*, "names")= chr "Attr7"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr7"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr7"
$ Attr8 : num [1:800, 1] -0.0929 -0.1547 -0.2806 -0.5133 1.0284 ...
..- attr(*, "scaled:center")= Named num 0.00905
.. ..- attr(*, "names")= chr "Attr8"
..- attr(*, "scaled:scale")= Named num 1.06
.. ..- attr(*, "names")= chr "Attr8"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr8"
$ Attr9 : num [1:800, 1] -0.256 1.173 -0.366 0.278 -0.243 ...
..- attr(*, "scaled:center")= Named num 0.00676
.. ..- attr(*, "names")= chr "Attr9"
..- attr(*, "scaled:scale")= Named num 1.17
.. ..- attr(*, "names")= chr "Attr9"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr9"
$ Attr10: num [1:800, 1] 0.02765 0.0178 -0.00766 -0.0913 0.10071 ...
..- attr(*, "scaled:center")= Named num 0.00746
.. ..- attr(*, "names")= chr "Attr10"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr10"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr10"
$ Attr11: num [1:800, 1] 0.2787 -0.0546 -0.1407 0.2713 0.1116 ...
..- attr(*, "scaled:center")= Named num -0.00209
.. ..- attr(*, "names")= chr "Attr11"
..- attr(*, "scaled:scale")= Named num 1.22
.. ..- attr(*, "names")= chr "Attr11"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr11"
$ Attr12: num [1:800, 1] 0.0844 -0.1082 -0.101 -0.1136 0.1232 ...
..- attr(*, "scaled:center")= Named num -0.0065
.. ..- attr(*, "names")= chr "Attr12"
..- attr(*, "scaled:scale")= Named num 0.971
.. ..- attr(*, "names")= chr "Attr12"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr12"
$ Attr13: num [1:800, 1] -0.00469 -0.01037 -0.00909 -0.00938 -0.00438 ...
..- attr(*, "scaled:center")= Named num -0.00563
.. ..- attr(*, "names")= chr "Attr13"
..- attr(*, "scaled:scale")= Named num 0.626
.. ..- attr(*, "names")= chr "Attr13"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr13"
$ Attr14: num [1:800, 1] 0.0259 0.00823 0.0022 0.01397 0.0181 ...
..- attr(*, "scaled:center")= Named num -0.00696
.. ..- attr(*, "names")= chr "Attr14"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr14"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr14"
$ Attr15: num [1:800, 1] -0.011291 0.000155 0.012692 0.010191 -0.012235 ...
..- attr(*, "scaled:center")= Named num -0.00499
.. ..- attr(*, "names")= chr "Attr15"
..- attr(*, "scaled:scale")= Named num 1.22
.. ..- attr(*, "names")= chr "Attr15"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr15"
$ Attr16: num [1:800, 1] 0.333 -0.256 -0.379 -0.364 0.51 ...
..- attr(*, "scaled:center")= Named num 0.00457
.. ..- attr(*, "names")= chr "Attr16"
..- attr(*, "scaled:scale")= Named num 0.993
.. ..- attr(*, "names")= chr "Attr16"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr16"
$ Attr17: num [1:800, 1] -0.118 -0.177 -0.298 -0.52 0.956 ...
..- attr(*, "scaled:center")= Named num 0.00856
.. ..- attr(*, "names")= chr "Attr17"
..- attr(*, "scaled:scale")= Named num 1.06
.. ..- attr(*, "names")= chr "Attr17"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr17"
$ Attr18: num [1:800, 1] 0.02481 0.00723 0.00123 0.01294 0.01706 ...
..- attr(*, "scaled:center")= Named num -0.00765
.. ..- attr(*, "names")= chr "Attr18"
..- attr(*, "scaled:scale")= Named num 1.4
.. ..- attr(*, "names")= chr "Attr18"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr18"
$ Attr19: num [1:800, 1] 0.0507 0.0112 0.0134 0.0246 0.0711 ...
..- attr(*, "scaled:center")= Named num -0.00397
.. ..- attr(*, "names")= chr "Attr19"
..- attr(*, "scaled:scale")= Named num 1.11
.. ..- attr(*, "names")= chr "Attr19"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr19"
$ Attr20: num [1:800, 1] -0.03733 -0.09561 -0.02817 -0.09189 0.00527 ...
..- attr(*, "scaled:center")= Named num -0.00733
.. ..- attr(*, "names")= chr "Attr20"
..- attr(*, "scaled:scale")= Named num 0.494
.. ..- attr(*, "names")= chr "Attr20"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr20"
$ Attr21: num [1:800, 1] -0.0181 -0.0186 -0.0195 -0.0178 -0.0182 ...
..- attr(*, "scaled:center")= Named num 0.0103
.. ..- attr(*, "names")= chr "Attr21"
..- attr(*, "scaled:scale")= Named num 1.4
.. ..- attr(*, "names")= chr "Attr21"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr21"
$ Attr22: num [1:800, 1] 0.3469 -0.0742 -0.2076 0.2751 0.0471 ...
..- attr(*, "scaled:center")= Named num -0.00458
.. ..- attr(*, "names")= chr "Attr22"
..- attr(*, "scaled:scale")= Named num 1.24
.. ..- attr(*, "names")= chr "Attr22"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr22"
$ Attr23: num [1:800, 1] 0.0536 0.0124 0.0162 0.0274 0.067 ...
..- attr(*, "scaled:center")= Named num -0.00328
.. ..- attr(*, "names")= chr "Attr23"
..- attr(*, "scaled:scale")= Named num 1.11
.. ..- attr(*, "names")= chr "Attr23"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr23"
$ Attr24: num [1:800, 1] 0.04925 0.03604 0.01694 0.00487 0.01386 ...
..- attr(*, "scaled:center")= Named num -0.0116
.. ..- attr(*, "names")= chr "Attr24"
..- attr(*, "scaled:scale")= Named num 1.1
.. ..- attr(*, "names")= chr "Attr24"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr24"
$ Attr25: num [1:800, 1] 0.15765 0.0975 0.00796 -0.18779 0.34543 ...
..- attr(*, "scaled:center")= Named num 0.00658
.. ..- attr(*, "names")= chr "Attr25"
..- attr(*, "scaled:scale")= Named num 1.36
.. ..- attr(*, "names")= chr "Attr25"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr25"
$ Attr26: num [1:800, 1] 0.412 -0.256 -0.355 -0.339 0.516 ...
..- attr(*, "scaled:center")= Named num 0.00499
.. ..- attr(*, "names")= chr "Attr26"
..- attr(*, "scaled:scale")= Named num 0.985
.. ..- attr(*, "names")= chr "Attr26"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr26"
$ Attr27: num [1:800, 1] -0.0112 -0.0111 -0.0112 -0.0112 -0.0112 ...
..- attr(*, "scaled:center")= Named num 0.00505
.. ..- attr(*, "names")= chr "Attr27"
..- attr(*, "scaled:scale")= Named num 1.34
.. ..- attr(*, "names")= chr "Attr27"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr27"
$ Attr28: num [1:800, 1] -0.023 -0.022 -0.0186 -0.038 -0.0257 ...
..- attr(*, "scaled:center")= Named num -0.00324
.. ..- attr(*, "names")= chr "Attr28"
..- attr(*, "scaled:scale")= Named num 0.644
.. ..- attr(*, "names")= chr "Attr28"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr28"
$ Attr29: num [1:800, 1] 0.097 -1.0114 -0.4627 -0.0693 1.6699 ...
..- attr(*, "scaled:center")= Named num 0.000412
.. ..- attr(*, "names")= chr "Attr29"
..- attr(*, "scaled:scale")= Named num 1.01
.. ..- attr(*, "names")= chr "Attr29"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr29"
$ Attr30: num [1:800, 1] -0.03258 -0.04332 -0.00944 -0.01722 -0.03539 ...
..- attr(*, "scaled:center")= Named num -0.00759
.. ..- attr(*, "names")= chr "Attr30"
..- attr(*, "scaled:scale")= Named num 0.361
.. ..- attr(*, "names")= chr "Attr30"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr30"
$ Attr31: num [1:800, 1] 0.05008 0.00647 0.01965 0.02588 0.07258 ...
..- attr(*, "scaled:center")= Named num -0.00328
.. ..- attr(*, "names")= chr "Attr31"
..- attr(*, "scaled:scale")= Named num 1.06
.. ..- attr(*, "names")= chr "Attr31"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr31"
$ Attr32: num [1:800, 1] -0.031625 -0.040942 -0.038457 -0.000458 -0.024224 ...
..- attr(*, "scaled:center")= Named num -0.00688
.. ..- attr(*, "names")= chr "Attr32"
..- attr(*, "scaled:scale")= Named num 0.421
.. ..- attr(*, "names")= chr "Attr32"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr32"
$ Attr33: num [1:800, 1] -0.16114 0.07664 -0.00619 -0.42266 -0.26363 ...
..- attr(*, "scaled:center")= Named num 0.0227
.. ..- attr(*, "names")= chr "Attr33"
..- attr(*, "scaled:scale")= Named num 1.18
.. ..- attr(*, "names")= chr "Attr33"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr33"
$ Attr34: num [1:800, 1] -0.51089 1.31685 -0.09163 -0.00839 -0.4821 ...
..- attr(*, "scaled:center")= Named num 0.0119
.. ..- attr(*, "names")= chr "Attr34"
..- attr(*, "scaled:scale")= Named num 1.1
.. ..- attr(*, "names")= chr "Attr34"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr34"
$ Attr35: num [1:800, 1] 0.4046 -0.0778 -0.2455 0.4427 0.053 ...
..- attr(*, "scaled:center")= Named num -0.0041
.. ..- attr(*, "names")= chr "Attr35"
..- attr(*, "scaled:scale")= Named num 1.16
.. ..- attr(*, "names")= chr "Attr35"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr35"
$ Attr36: num [1:800, 1] -0.2359 0.9641 -0.6158 0.0454 -0.7919 ...
..- attr(*, "scaled:center")= Named num 0.00934
.. ..- attr(*, "names")= chr "Attr36"
..- attr(*, "scaled:scale")= Named num 1.09
.. ..- attr(*, "names")= chr "Attr36"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr36"
$ Attr37: num [1:800, 1] -0.0307 -0.0238 -0.031 -0.0284 -0.0265 ...
..- attr(*, "scaled:center")= Named num 0.00543
.. ..- attr(*, "names")= chr "Attr37"
..- attr(*, "scaled:scale")= Named num 1.29
.. ..- attr(*, "names")= chr "Attr37"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr37"
$ Attr38: num [1:800, 1] 0.0162 -0.0185 0.0425 -0.0948 0.0404 ...
..- attr(*, "scaled:center")= Named num 0.00747
.. ..- attr(*, "names")= chr "Attr38"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr38"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr38"
$ Attr39: num [1:800, 1] 0.06825 -0.00302 0.00284 0.05371 0.07622 ...
..- attr(*, "scaled:center")= Named num -0.000878
.. ..- attr(*, "names")= chr "Attr39"
..- attr(*, "scaled:scale")= Named num 0.903
.. ..- attr(*, "names")= chr "Attr39"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr39"
$ Attr40: num [1:800, 1] -0.152 -0.207 -0.119 -0.199 -0.175 ...
..- attr(*, "scaled:center")= Named num -0.00199
.. ..- attr(*, "names")= chr "Attr40"
..- attr(*, "scaled:scale")= Named num 0.709
.. ..- attr(*, "names")= chr "Attr40"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr40"
$ Attr41: num [1:800, 1] -0.02611 -0.01571 -0.00488 -0.01439 -0.02615 ...
..- attr(*, "scaled:center")= Named num -0.00731
.. ..- attr(*, "names")= chr "Attr41"
..- attr(*, "scaled:scale")= Named num 0.00495
.. ..- attr(*, "names")= chr "Attr41"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr41"
$ Attr42: num [1:800, 1] 0.04894 0.00201 0.00623 0.03236 0.05414 ...
..- attr(*, "scaled:center")= Named num -0.00506
.. ..- attr(*, "names")= chr "Attr42"
..- attr(*, "scaled:scale")= Named num 1.08
.. ..- attr(*, "names")= chr "Attr42"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr42"
$ Attr43: num [1:800, 1] -0.03012 -0.07668 0.04803 -0.05856 0.00525 ...
..- attr(*, "scaled:center")= Named num -0.0106
.. ..- attr(*, "names")= chr "Attr43"
..- attr(*, "scaled:scale")= Named num 0.125
.. ..- attr(*, "names")= chr "Attr43"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr43"
$ Attr44: num [1:800, 1] -0.01597 -0.04 0.13536 -0.00691 0.00435 ...
..- attr(*, "scaled:center")= Named num -0.01
.. ..- attr(*, "names")= chr "Attr44"
..- attr(*, "scaled:scale")= Named num 0.0633
.. ..- attr(*, "names")= chr "Attr44"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr44"
$ Attr45: num [1:800, 1] 0.00821 0.00747 0.00728 0.00825 0.00808 ...
..- attr(*, "scaled:center")= Named num -0.00614
.. ..- attr(*, "names")= chr "Attr45"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr45"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr45"
$ Attr46: num [1:800, 1] -0.0962 -0.0871 0.2019 -0.2418 -0.1335 ...
..- attr(*, "scaled:center")= Named num 0.00311
.. ..- attr(*, "names")= chr "Attr46"
..- attr(*, "scaled:scale")= Named num 0.889
.. ..- attr(*, "names")= chr "Attr46"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr46"
$ Attr47: num [1:800, 1] -0.0237 -0.0383 -0.0235 -0.0368 -0.0131 ...
..- attr(*, "scaled:center")= Named num -0.00467
.. ..- attr(*, "names")= chr "Attr47"
..- attr(*, "scaled:scale")= Named num 0.84
.. ..- attr(*, "names")= chr "Attr47"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr47"
$ Attr48: num [1:800, 1] 0.06628 -0.00104 -0.11954 0.36817 0.12064 ...
..- attr(*, "scaled:center")= Named num -0.00641
.. ..- attr(*, "names")= chr "Attr48"
..- attr(*, "scaled:scale")= Named num 1.18
.. ..- attr(*, "names")= chr "Attr48"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr48"
$ Attr49: num [1:800, 1] 0.0314 0.0219 0.0106 0.0522 0.0539 ...
..- attr(*, "scaled:center")= Named num -0.000638
.. ..- attr(*, "names")= chr "Attr49"
..- attr(*, "scaled:scale")= Named num 1.02
.. ..- attr(*, "names")= chr "Attr49"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr49"
$ Attr50: num [1:800, 1] -0.1943 -0.0182 -0.3524 -0.5828 0.108 ...
..- attr(*, "scaled:center")= Named num 0.00098
.. ..- attr(*, "names")= chr "Attr50"
..- attr(*, "scaled:scale")= Named num 0.991
.. ..- attr(*, "names")= chr "Attr50"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr50"
$ Attr51: num [1:800, 1] -0.322 0.31 -0.836 1.601 -0.763 ...
..- attr(*, "scaled:center")= Named num -0.00185
.. ..- attr(*, "names")= chr "Attr51"
..- attr(*, "scaled:scale")= Named num 1.05
.. ..- attr(*, "names")= chr "Attr51"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr51"
$ Attr52: num [1:800, 1] -0.02979 -0.03933 -0.03679 0.00214 -0.02221 ...
..- attr(*, "scaled:center")= Named num -0.00729
.. ..- attr(*, "names")= chr "Attr52"
..- attr(*, "scaled:scale")= Named num 0.412
.. ..- attr(*, "names")= chr "Attr52"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr52"
$ Attr53: num [1:800, 1] -0.0241 0.0012 -0.0424 -0.0901 -0.0165 ...
..- attr(*, "scaled:center")= Named num -0.00795
.. ..- attr(*, "names")= chr "Attr53"
..- attr(*, "scaled:scale")= Named num 0.328
.. ..- attr(*, "names")= chr "Attr53"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr53"
$ Attr54: num [1:800, 1] -0.021 -0.02 -0.0169 -0.0368 -0.0237 ...
..- attr(*, "scaled:center")= Named num -0.00311
.. ..- attr(*, "names")= chr "Attr54"
..- attr(*, "scaled:scale")= Named num 0.648
.. ..- attr(*, "names")= chr "Attr54"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr54"
$ Attr55: num [1:800, 1] -0.064 -0.1321 -0.0814 -0.2793 0.4017 ...
..- attr(*, "scaled:center")= Named num -0.00881
.. ..- attr(*, "names")= chr "Attr55"
..- attr(*, "scaled:scale")= Named num 0.819
.. ..- attr(*, "names")= chr "Attr55"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr55"
$ Attr56: num [1:800, 1] 0.046 -0.0213 -0.0154 0.0354 0.0569 ...
..- attr(*, "scaled:center")= Named num 0.0098
.. ..- attr(*, "names")= chr "Attr56"
..- attr(*, "scaled:scale")= Named num 0.0174
.. ..- attr(*, "names")= chr "Attr56"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr56"
$ Attr57: num [1:800, 1] 0.02144 0.00385 0.00068 0.05024 0.00721 ...
..- attr(*, "scaled:center")= Named num 0.00521
.. ..- attr(*, "names")= chr "Attr57"
..- attr(*, "scaled:scale")= Named num 0.719
.. ..- attr(*, "names")= chr "Attr57"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr57"
$ Attr58: num [1:800, 1] -0.03862 0.00759 0.00554 -0.00704 -0.04589 ...
..- attr(*, "scaled:center")= Named num -0.00975
.. ..- attr(*, "names")= chr "Attr58"
..- attr(*, "scaled:scale")= Named num 0.0261
.. ..- attr(*, "names")= chr "Attr58"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr58"
$ Attr59: num [1:800, 1] -0.0352 -0.0435 -0.0124 -0.0374 -0.0442 ...
..- attr(*, "scaled:center")= Named num -0.00266
.. ..- attr(*, "names")= chr "Attr59"
..- attr(*, "scaled:scale")= Named num 0.467
.. ..- attr(*, "names")= chr "Attr59"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr59"
$ Attr60: num [1:800, 1] -0.036 -0.0262 -0.0365 -0.0276 -0.0379 ...
..- attr(*, "scaled:center")= Named num 0.00455
.. ..- attr(*, "names")= chr "Attr60"
..- attr(*, "scaled:scale")= Named num 1.25
.. ..- attr(*, "names")= chr "Attr60"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr60"
$ Attr61: num [1:800, 1] -0.168 -0.139 -0.256 -0.177 -0.187 ...
..- attr(*, "scaled:center")= Named num 0.0143
.. ..- attr(*, "names")= chr "Attr61"
..- attr(*, "scaled:scale")= Named num 1.17
.. ..- attr(*, "names")= chr "Attr61"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr61"
$ Attr62: num [1:800, 1] -0.02678 -0.03413 -0.03162 0.00492 -0.02002 ...
..- attr(*, "scaled:center")= Named num -0.00686
.. ..- attr(*, "names")= chr "Attr62"
..- attr(*, "scaled:scale")= Named num 0.277
.. ..- attr(*, "names")= chr "Attr62"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr62"
$ Attr63: num [1:800, 1] -0.1507 0.0324 -0.0426 -0.4306 -0.2522 ...
..- attr(*, "scaled:center")= Named num 0.0208
.. ..- attr(*, "names")= chr "Attr63"
..- attr(*, "scaled:scale")= Named num 1.12
.. ..- attr(*, "names")= chr "Attr63"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr63"
$ Attr64: num [1:800, 1] -0.03589 -0.00937 -0.04046 -0.03243 -0.04495 ...
..- attr(*, "scaled:center")= Named num -0.00398
.. ..- attr(*, "names")= chr "Attr64"
..- attr(*, "scaled:scale")= Named num 0.931
.. ..- attr(*, "names")= chr "Attr64"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:800] "2421" "5377" "9487" "1283" ...
.. ..$ : chr "Attr64"
$ class : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
- attr(*, "groups")= tibble [2 × 2] (S3: tbl_df/tbl/data.frame)
..$ class: Factor w/ 2 levels "0","1": 1 2
..$ .rows: list<int> [1:2]
.. ..$ : int [1:784] 1 2 3 4 5 6 7 8 9 10 ...
.. ..$ : int [1:16] 785 786 787 788 789 790 791 792 793 794 ...
.. ..@ ptype: int(0)
..- attr(*, ".drop")= logi TRUE
typeof(bankruptcy_data)
[1] "list"
table(bankruptcy_small$class)
0 1
784 16
bankruptcy_train <- bankruptcy_small %>% group_by(class) %>% sample_frac(.70)
bankruptcy_train
table(bankruptcy_train$class)
0 1
549 11
bankruptcy_test <- anti_join(bankruptcy_small %>% group_by(class) %>% sample_frac(.90), bankruptcy_train)
Joining, by = c("Attr1", "Attr2", "Attr3", "Attr4", "Attr5", "Attr6", "Attr7", "Attr8", "Attr9", "Attr10", "Attr11", "Attr12", "Attr13", "Attr14", "Attr15", "Attr16", "Attr17", "Attr18", "Attr19", "Attr20", "Attr21", "Attr22", "Attr23", "Attr24", "Attr25", "Attr26", "Attr27", "Attr28", "Attr29", "Attr30", "Attr31", "Attr32", "Attr33", "Attr34", "Attr35", "Attr36", "Attr37", "Attr38", "Attr39", "Attr40", "Attr41", "Attr42", "Attr43", "Attr44", "Attr45", "Attr46", "Attr47", "Attr48", "Attr49", "Attr50", "Attr51", "Attr52", "Attr53", "Attr54", "Attr55", "Attr56", "Attr57", "Attr58", "Attr59", "Attr60", "Attr61", "Attr62", "Attr63", "Attr64", "class")
bankruptcy_test
table(bankruptcy_test$class)
0 1
206 4
Get dimensions
n=dim(bankruptcy_train)[1]
p=dim(bankruptcy_train)[2]
#str(bankruptcy_train)
dim(bankruptcy_train)
[1] 560 65
names(bankruptcy_train)
[1] "Attr1" "Attr2" "Attr3" "Attr4" "Attr5" "Attr6" "Attr7" "Attr8" "Attr9"
[10] "Attr10" "Attr11" "Attr12" "Attr13" "Attr14" "Attr15" "Attr16" "Attr17" "Attr18"
[19] "Attr19" "Attr20" "Attr21" "Attr22" "Attr23" "Attr24" "Attr25" "Attr26" "Attr27"
[28] "Attr28" "Attr29" "Attr30" "Attr31" "Attr32" "Attr33" "Attr34" "Attr35" "Attr36"
[37] "Attr37" "Attr38" "Attr39" "Attr40" "Attr41" "Attr42" "Attr43" "Attr44" "Attr45"
[46] "Attr46" "Attr47" "Attr48" "Attr49" "Attr50" "Attr51" "Attr52" "Attr53" "Attr54"
[55] "Attr55" "Attr56" "Attr57" "Attr58" "Attr59" "Attr60" "Attr61" "Attr62" "Attr63"
[64] "Attr64" "class"
typeof(bankruptcy_train)
[1] "list"
A Bayesian logistic regression model
library(tidyverse)
Registered S3 methods overwritten by 'dbplyr':
method from
print.tbl_lazy
print.tbl_sql
── Attaching packages ──────────────────────────────────────────────── tidyverse 1.3.0 ──
✓ ggplot2 3.3.2 ✓ purrr 0.3.4
✓ tibble 3.0.3 ✓ dplyr 1.0.1
✓ tidyr 1.1.1 ✓ stringr 1.4.0
✓ readr 1.3.1 ✓ forcats 0.5.0
── Conflicts ─────────────────────────────────────────────────── tidyverse_conflicts() ──
x dplyr::filter() masks stats::filter()
x dplyr::lag() masks stats::lag()
library(caret)
Loading required package: lattice
Registered S3 method overwritten by 'data.table':
method from
print.data.table
Attaching package: ‘caret’
The following object is masked from ‘package:purrr’:
lift
library(GGally)
Registered S3 method overwritten by 'GGally':
method from
+.gg ggplot2
library(ggplot2)
library(corrplot)
corrplot 0.84 loaded
library(bayesplot)
This is bayesplot version 1.7.2
- Online documentation and vignettes at mc-stan.org/bayesplot
- bayesplot theme set to bayesplot::theme_default()
* Does _not_ affect other ggplot2 plots
* See ?bayesplot_theme_set for details on theme setting
theme_set(bayesplot::theme_default(base_family = "sans"))
library(rstanarm)
Loading required package: Rcpp
Registered S3 method overwritten by 'htmlwidgets':
method from
print.htmlwidget tools:rstudio
This is rstanarm version 2.21.1
- See https://mc-stan.org/rstanarm/articles/priors for changes to default priors!
- Default priors may change, so it's safest to specify priors, even if equivalent to the defaults.
- For execution on a local, multicore CPU with excess RAM we recommend calling
options(mc.cores = parallel::detectCores())
Attaching package: ‘rstanarm’
The following objects are masked from ‘package:caret’:
compare_models, R2
options(mc.cores = parallel::detectCores())
library(loo)
This is loo version 2.3.1
- Online documentation and vignettes at mc-stan.org/loo
- As of v2.0.0 loo defaults to 1 core but we recommend using as many as possible. Use the 'cores' argument or set options(mc.cores = NUM_CORES) for an entire session.
library(projpred)
This is projpred version 1.1.6.
SEED=42
library(broom)
t_prior <- student_t(df = 7, location = 0, scale = 2.5)
post1 <- stan_glm(class ~ . , data = bankruptcy_train,
family = binomial(link = "logit"),
prior = t_prior, prior_intercept = t_prior,
seed = 42)
starting worker pid=2707 on localhost:11155 at 20:47:25.857
starting worker pid=2721 on localhost:11155 at 20:47:26.265
starting worker pid=2735 on localhost:11155 at 20:47:26.598
starting worker pid=2749 on localhost:11155 at 20:47:26.964
SAMPLING FOR MODEL 'bernoulli' NOW (CHAIN 1).
Chain 1:
Chain 1: Gradient evaluation took 0.000629 seconds
Chain 1: 1000 transitions using 10 leapfrog steps per transition would take 6.29 seconds.
Chain 1: Adjust your expectations accordingly!
Chain 1:
Chain 1:
Chain 1: Iteration: 1 / 2000 [ 0%] (Warmup)
SAMPLING FOR MODEL 'bernoulli' NOW (CHAIN 2).
Chain 2:
Chain 2: Gradient evaluation took 0.000215 seconds
Chain 2: 1000 transitions using 10 leapfrog steps per transition would take 2.15 seconds.
Chain 2: Adjust your expectations accordingly!
Chain 2:
Chain 2:
Chain 2: Iteration: 1 / 2000 [ 0%] (Warmup)
SAMPLING FOR MODEL 'bernoulli' NOW (CHAIN 3).
Chain 3:
Chain 3: Gradient evaluation took 0.000206 seconds
Chain 3: 1000 transitions using 10 leapfrog steps per transition would take 2.06 seconds.
Chain 3: Adjust your expectations accordingly!
Chain 3:
Chain 3:
Chain 3: Iteration: 1 / 2000 [ 0%] (Warmup)
SAMPLING FOR MODEL 'bernoulli' NOW (CHAIN 4).
Chain 4:
Chain 4: Gradient evaluation took 0.000259 seconds
Chain 4: 1000 transitions using 10 leapfrog steps per transition would take 2.59 seconds.
Chain 4: Adjust your expectations accordingly!
Chain 4:
Chain 4:
Chain 4: Iteration: 1 / 2000 [ 0%] (Warmup)
Chain 1: Iteration: 200 / 2000 [ 10%] (Warmup)
Chain 2: Iteration: 200 / 2000 [ 10%] (Warmup)
Chain 1: Iteration: 400 / 2000 [ 20%] (Warmup)
Chain 4: Iteration: 200 / 2000 [ 10%] (Warmup)
Chain 3: Iteration: 200 / 2000 [ 10%] (Warmup)
Chain 2: Iteration: 400 / 2000 [ 20%] (Warmup)
Chain 1: Iteration: 600 / 2000 [ 30%] (Warmup)
Chain 4: Iteration: 400 / 2000 [ 20%] (Warmup)
Chain 3: Iteration: 400 / 2000 [ 20%] (Warmup)
Chain 2: Iteration: 600 / 2000 [ 30%] (Warmup)
Chain 1: Iteration: 800 / 2000 [ 40%] (Warmup)
Chain 4: Iteration: 600 / 2000 [ 30%] (Warmup)
Chain 2: Iteration: 800 / 2000 [ 40%] (Warmup)
Chain 3: Iteration: 600 / 2000 [ 30%] (Warmup)
Chain 1: Iteration: 1000 / 2000 [ 50%] (Warmup)
Chain 1: Iteration: 1001 / 2000 [ 50%] (Sampling)
Chain 4: Iteration: 800 / 2000 [ 40%] (Warmup)
Chain 3: Iteration: 800 / 2000 [ 40%] (Warmup)
Chain 2: Iteration: 1000 / 2000 [ 50%] (Warmup)
Chain 2: Iteration: 1001 / 2000 [ 50%] (Sampling)
Chain 1: Iteration: 1200 / 2000 [ 60%] (Sampling)
Chain 4: Iteration: 1000 / 2000 [ 50%] (Warmup)
Chain 4: Iteration: 1001 / 2000 [ 50%] (Sampling)
Chain 3: Iteration: 1000 / 2000 [ 50%] (Warmup)
Chain 3: Iteration: 1001 / 2000 [ 50%] (Sampling)
Chain 2: Iteration: 1200 / 2000 [ 60%] (Sampling)
Chain 1: Iteration: 1400 / 2000 [ 70%] (Sampling)
Chain 4: Iteration: 1200 / 2000 [ 60%] (Sampling)
Chain 2: Iteration: 1400 / 2000 [ 70%] (Sampling)
Chain 3: Iteration: 1200 / 2000 [ 60%] (Sampling)
Chain 1: Iteration: 1600 / 2000 [ 80%] (Sampling)
Chain 4: Iteration: 1400 / 2000 [ 70%] (Sampling)
Chain 2: Iteration: 1600 / 2000 [ 80%] (Sampling)
Chain 3: Iteration: 1400 / 2000 [ 70%] (Sampling)
Chain 1: Iteration: 1800 / 2000 [ 90%] (Sampling)
Chain 4: Iteration: 1600 / 2000 [ 80%] (Sampling)
Chain 2: Iteration: 1800 / 2000 [ 90%] (Sampling)
Chain 3: Iteration: 1600 / 2000 [ 80%] (Sampling)
Chain 1: Iteration: 2000 / 2000 [100%] (Sampling)
Chain 1:
Chain 1: Elapsed Time: 11.9935 seconds (Warm-up)
Chain 1: 10.6684 seconds (Sampling)
Chain 1: 22.6619 seconds (Total)
Chain 1:
Chain 4: Iteration: 1800 / 2000 [ 90%] (Sampling)
Chain 3: Iteration: 1800 / 2000 [ 90%] (Sampling)
Chain 2: Iteration: 2000 / 2000 [100%] (Sampling)
Chain 2:
Chain 2: Elapsed Time: 12.5312 seconds (Warm-up)
Chain 2: 10.3572 seconds (Sampling)
Chain 2: 22.8884 seconds (Total)
Chain 2:
Chain 4: Iteration: 2000 / 2000 [100%] (Sampling)
Chain 4:
Chain 4: Elapsed Time: 12.7464 seconds (Warm-up)
Chain 4: 10.2252 seconds (Sampling)
Chain 4: 22.9716 seconds (Total)
Chain 4:
Chain 3: Iteration: 2000 / 2000 [100%] (Sampling)
Chain 3:
Chain 3: Elapsed Time: 13.6112 seconds (Warm-up)
Chain 3: 10.3012 seconds (Sampling)
Chain 3: 23.9124 seconds (Total)
Chain 3:
summary(post1)
Model Info:
function: stan_glm
family: binomial [logit]
formula: class ~ .
algorithm: sampling
sample: 4000 (posterior sample size)
priors: see help('prior_summary')
observations: 560
predictors: 65
Estimates:
mean sd 10% 50% 90%
(Intercept) -8.7 1.3 -10.5 -8.6 -7.1
Attr1 0.5 2.6 -2.7 0.4 3.8
Attr2 -0.4 2.9 -3.9 -0.3 3.0
Attr3 -0.6 0.9 -1.7 -0.6 0.5
Attr4 -1.1 2.6 -4.4 -0.9 2.0
Attr5 0.4 2.7 -2.8 0.4 3.8
Attr6 0.4 2.9 -3.2 0.3 4.1
Attr7 0.0 2.9 -3.5 0.0 3.5
Attr8 -0.4 2.2 -3.2 -0.3 2.4
Attr9 0.3 1.4 -1.5 0.2 2.1
Attr10 0.7 2.9 -2.8 0.6 4.4
Attr11 -0.1 1.5 -1.9 0.0 1.8
Attr12 -0.3 2.2 -3.1 -0.3 2.5
Attr13 -0.1 2.9 -3.5 -0.1 3.2
Attr14 0.0 3.0 -3.4 0.0 3.4
Attr15 -0.6 1.1 -2.1 -0.5 0.9
Attr16 -1.0 2.1 -3.8 -1.0 1.5
Attr17 -1.2 2.2 -4.0 -1.1 1.5
Attr18 0.0 2.8 -3.3 0.0 3.5
Attr19 -0.4 2.6 -3.6 -0.4 2.9
Attr20 1.5 2.1 -1.1 1.4 4.2
Attr21 -0.1 2.9 -3.6 0.0 3.5
Attr22 -0.3 1.8 -2.5 -0.2 2.0
Attr23 0.1 2.6 -3.1 0.1 3.3
Attr24 0.0 2.6 -3.3 0.0 3.3
Attr25 0.5 1.8 -1.8 0.5 2.8
Attr26 -0.2 2.1 -2.8 -0.1 2.4
Attr27 0.0 3.0 -3.7 0.0 3.5
Attr28 -1.1 2.8 -4.6 -1.0 2.1
Attr29 -0.4 0.5 -1.0 -0.4 0.2
Attr30 -0.3 2.7 -3.6 -0.2 2.9
Attr31 -0.8 2.5 -3.9 -0.7 2.1
Attr32 -0.3 2.7 -3.6 -0.2 3.1
Attr33 -1.1 2.0 -3.6 -1.1 1.5
Attr34 2.4 1.3 0.8 2.3 4.0
Attr35 -0.7 0.7 -1.7 -0.6 0.1
Attr36 0.5 1.5 -1.4 0.5 2.4
Attr37 0.9 0.5 0.3 0.9 1.5
Attr38 0.4 3.0 -3.2 0.3 4.0
Attr39 0.2 2.6 -3.1 0.1 3.4
Attr40 -0.9 2.4 -4.0 -0.7 2.0
Attr41 -3.6 2.3 -6.7 -3.4 -0.8
Attr42 -0.5 2.8 -4.0 -0.5 2.8
Attr43 -0.1 2.5 -3.1 -0.1 3.1
Attr44 -2.6 2.8 -6.3 -2.4 0.7
Attr45 -0.1 2.7 -3.4 0.0 3.2
Attr46 -2.1 2.7 -5.5 -1.8 1.1
Attr47 0.0 2.9 -3.4 0.0 3.5
Attr48 1.3 1.6 -0.7 1.2 3.3
Attr49 -0.4 2.7 -3.8 -0.4 2.8
Attr50 -0.1 2.0 -2.6 -0.1 2.5
Attr51 -1.3 1.0 -2.6 -1.3 -0.1
Attr52 -0.8 2.8 -4.3 -0.7 2.6
Attr53 -0.9 1.5 -2.9 -0.7 1.0
Attr54 -1.1 2.8 -4.6 -0.9 2.3
Attr55 -1.2 0.7 -2.2 -1.2 -0.3
Attr56 1.5 2.3 -1.4 1.4 4.4
Attr57 -0.1 0.6 -1.0 -0.1 0.6
Attr58 -1.6 2.5 -4.7 -1.5 1.3
Attr59 -0.1 0.9 -1.4 0.0 1.1
Attr60 -2.1 2.0 -4.7 -1.7 -0.1
Attr61 -2.0 1.4 -4.0 -1.8 -0.4
Attr62 -0.3 2.8 -3.8 -0.3 3.0
Attr63 -6.1 3.6 -10.7 -5.5 -2.2
Attr64 -1.1 2.6 -4.4 -1.0 2.0
Fit Diagnostics:
mean sd 10% 50% 90%
mean_PPD 0.0 0.0 0.0 0.0 0.0
The mean_ppd is the sample average posterior predictive distribution of the outcome variable (for details see help('summary.stanreg')).
MCMC diagnostics
mcse Rhat n_eff
(Intercept) 0.0 1.0 2575
Attr1 0.0 1.0 6744
Attr2 0.0 1.0 7186
Attr3 0.0 1.0 2568
Attr4 0.0 1.0 5057
Attr5 0.0 1.0 5556
Attr6 0.0 1.0 7131
Attr7 0.0 1.0 6764
Attr8 0.0 1.0 3941
Attr9 0.0 1.0 3246
Attr10 0.0 1.0 6023
Attr11 0.0 1.0 4380
Attr12 0.0 1.0 4519
Attr13 0.0 1.0 5926
Attr14 0.0 1.0 6704
Attr15 0.0 1.0 4753
Attr16 0.0 1.0 3857
Attr17 0.0 1.0 4231
Attr18 0.0 1.0 7600
Attr19 0.0 1.0 5419
Attr20 0.0 1.0 5161
Attr21 0.0 1.0 6414
Attr22 0.0 1.0 3823
Attr23 0.0 1.0 5061
Attr24 0.0 1.0 4978
Attr25 0.0 1.0 5123
Attr26 0.0 1.0 3786
Attr27 0.0 1.0 6536
Attr28 0.0 1.0 4506
Attr29 0.0 1.0 3850
Attr30 0.0 1.0 5583
Attr31 0.0 1.0 5369
Attr32 0.0 1.0 6335
Attr33 0.0 1.0 3998
Attr34 0.0 1.0 3205
Attr35 0.0 1.0 3434
Attr36 0.0 1.0 2833
Attr37 0.0 1.0 6434
Attr38 0.0 1.0 6559
Attr39 0.0 1.0 5991
Attr40 0.0 1.0 5235
Attr41 0.0 1.0 4568
Attr42 0.0 1.0 6620
Attr43 0.0 1.0 5598
Attr44 0.0 1.0 4861
Attr45 0.0 1.0 6690
Attr46 0.0 1.0 4938
Attr47 0.0 1.0 5764
Attr48 0.0 1.0 3818
Attr49 0.0 1.0 6896
Attr50 0.0 1.0 2954
Attr51 0.0 1.0 2597
Attr52 0.0 1.0 6122
Attr53 0.0 1.0 2244
Attr54 0.0 1.0 4867
Attr55 0.0 1.0 3144
Attr56 0.0 1.0 5040
Attr57 0.0 1.0 3534
Attr58 0.0 1.0 4346
Attr59 0.0 1.0 4013
Attr60 0.0 1.0 2823
Attr61 0.0 1.0 3562
Attr62 0.0 1.0 6039
Attr63 0.1 1.0 2797
Attr64 0.0 1.0 5148
mean_PPD 0.0 1.0 4090
log-posterior 0.1 1.0 1832
For each parameter, mcse is Monte Carlo standard error, n_eff is a crude measure of effective sample size, and Rhat is the potential scale reduction factor on split chains (at convergence Rhat=1).
PPC
pp_check(post1, "dens_overlay")

pp_check(post1, "stat")

Test!!!!
dim(bankruptcy_test)
[1] 210 65
table(bankruptcy_test$class)
0 1
206 4
str(bankruptcy_test)
tibble [210 × 65] (S3: grouped_df/tbl_df/tbl/data.frame)
$ Attr1 : num [1:210, 1] -0.06518 -0.0611 -0.0967 0.00205 0.03195 ...
..- attr(*, "scaled:center")= Named num 0.00795
.. ..- attr(*, "names")= chr "Attr1"
..- attr(*, "scaled:scale")= Named num 1.4
.. ..- attr(*, "names")= chr "Attr1"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr1"
$ Attr2 : num [1:210, 1] -0.0113 0.0245 0.0627 0.0881 0.0228 ...
..- attr(*, "scaled:center")= Named num -0.00714
.. ..- attr(*, "names")= chr "Attr2"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr2"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr2"
$ Attr3 : num [1:210, 1] -0.0797 -0.4196 0.3843 1.3101 -0.4712 ...
..- attr(*, "scaled:center")= Named num -0.00354
.. ..- attr(*, "names")= chr "Attr3"
..- attr(*, "scaled:scale")= Named num 1.02
.. ..- attr(*, "names")= chr "Attr3"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr3"
$ Attr4 : num [1:210, 1] -0.09342 -0.20804 -0.10786 -0.00874 -0.21388 ...
..- attr(*, "scaled:center")= Named num 0.005
.. ..- attr(*, "names")= chr "Attr4"
..- attr(*, "scaled:scale")= Named num 0.908
.. ..- attr(*, "names")= chr "Attr4"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr4"
$ Attr5 : num [1:210, 1] 0.00823 0.00862 0.00808 0.00855 0.00843 ...
..- attr(*, "scaled:center")= Named num -0.00469
.. ..- attr(*, "names")= chr "Attr5"
..- attr(*, "scaled:scale")= Named num 1.39
.. ..- attr(*, "names")= chr "Attr5"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr5"
$ Attr6 : num [1:210, 1] 0.0373 -0.01 -0.0173 -0.0136 -0.0136 ...
..- attr(*, "scaled:center")= Named num 0.00146
.. ..- attr(*, "names")= chr "Attr6"
..- attr(*, "scaled:scale")= Named num 1.29
.. ..- attr(*, "names")= chr "Attr6"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr6"
$ Attr7 : num [1:210, 1] -0.001577 -0.000537 -0.005357 0.012672 0.015064 ...
..- attr(*, "scaled:center")= Named num -0.00696
.. ..- attr(*, "names")= chr "Attr7"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr7"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr7"
$ Attr8 : num [1:210, 1] -0.149 -0.344 -0.471 -0.534 -0.328 ...
..- attr(*, "scaled:center")= Named num 0.00905
.. ..- attr(*, "names")= chr "Attr8"
..- attr(*, "scaled:scale")= Named num 1.06
.. ..- attr(*, "names")= chr "Attr8"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr8"
$ Attr9 : num [1:210, 1] -0.337 -0.343 -0.398 -0.023 0.659 ...
..- attr(*, "scaled:center")= Named num 0.00676
.. ..- attr(*, "names")= chr "Attr9"
..- attr(*, "scaled:scale")= Named num 1.17
.. ..- attr(*, "names")= chr "Attr9"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr9"
$ Attr10: num [1:210, 1] 0.0136 -0.0257 -0.0705 -0.1027 -0.0199 ...
..- attr(*, "scaled:center")= Named num 0.00746
.. ..- attr(*, "names")= chr "Attr10"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr10"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr10"
$ Attr11: num [1:210, 1] -0.31 -0.288 -0.273 0.222 0.114 ...
..- attr(*, "scaled:center")= Named num -0.00209
.. ..- attr(*, "names")= chr "Attr11"
..- attr(*, "scaled:scale")= Named num 1.22
.. ..- attr(*, "names")= chr "Attr11"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr11"
$ Attr12: num [1:210, 1] -0.1628 -0.1605 -0.1889 -0.0851 -0.0791 ...
..- attr(*, "scaled:center")= Named num -0.0065
.. ..- attr(*, "names")= chr "Attr12"
..- attr(*, "scaled:scale")= Named num 0.971
.. ..- attr(*, "names")= chr "Attr12"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr12"
$ Attr13: num [1:210, 1] -0.00973 -0.01084 -0.011 -0.00931 -0.00898 ...
..- attr(*, "scaled:center")= Named num -0.00563
.. ..- attr(*, "names")= chr "Attr13"
..- attr(*, "scaled:scale")= Named num 0.626
.. ..- attr(*, "names")= chr "Attr13"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr13"
$ Attr14: num [1:210, 1] -0.001579 -0.000539 -0.00536 0.012669 0.015062 ...
..- attr(*, "scaled:center")= Named num -0.00696
.. ..- attr(*, "names")= chr "Attr14"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr14"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr14"
$ Attr15: num [1:210, 1] 0.01395 0.0166 0.17374 0.01813 -0.00409 ...
..- attr(*, "scaled:center")= Named num -0.00499
.. ..- attr(*, "names")= chr "Attr15"
..- attr(*, "scaled:scale")= Named num 1.22
.. ..- attr(*, "names")= chr "Attr15"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr15"
$ Attr16: num [1:210, 1] -0.386 -0.399 -0.521 -0.405 -0.16 ...
..- attr(*, "scaled:center")= Named num 0.00457
.. ..- attr(*, "names")= chr "Attr16"
..- attr(*, "scaled:scale")= Named num 0.993
.. ..- attr(*, "names")= chr "Attr16"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr16"
$ Attr17: num [1:210, 1] -0.144 -0.351 -0.48 -0.54 -0.343 ...
..- attr(*, "scaled:center")= Named num 0.00856
.. ..- attr(*, "names")= chr "Attr17"
..- attr(*, "scaled:scale")= Named num 1.06
.. ..- attr(*, "names")= chr "Attr17"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr17"
$ Attr18: num [1:210, 1] -0.00254 -0.0015 -0.0063 0.01165 0.01403 ...
..- attr(*, "scaled:center")= Named num -0.00765
.. ..- attr(*, "names")= chr "Attr18"
..- attr(*, "scaled:scale")= Named num 1.4
.. ..- attr(*, "names")= chr "Attr18"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr18"
$ Attr19: num [1:210, 1] 0.00367 0.00382 -0.0063 0.02833 0.02105 ...
..- attr(*, "scaled:center")= Named num -0.00397
.. ..- attr(*, "names")= chr "Attr19"
..- attr(*, "scaled:scale")= Named num 1.11
.. ..- attr(*, "names")= chr "Attr19"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr19"
$ Attr20: num [1:210, 1] 0.0794 -0.1024 0.235 0.1485 -0.0607 ...
..- attr(*, "scaled:center")= Named num -0.00733
.. ..- attr(*, "names")= chr "Attr20"
..- attr(*, "scaled:scale")= Named num 0.494
.. ..- attr(*, "names")= chr "Attr20"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr20"
$ Attr21: num [1:210, 1] -0.0191 -0.0187 -0.0187 -0.0168 -0.0186 ...
..- attr(*, "scaled:center")= Named num 0.0103
.. ..- attr(*, "names")= chr "Attr21"
..- attr(*, "scaled:scale")= Named num 1.4
.. ..- attr(*, "names")= chr "Attr21"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr21"
$ Attr22: num [1:210, 1] -0.2406 -0.2594 -0.2753 0.0569 0.1164 ...
..- attr(*, "scaled:center")= Named num -0.00458
.. ..- attr(*, "names")= chr "Attr22"
..- attr(*, "scaled:scale")= Named num 1.24
.. ..- attr(*, "names")= chr "Attr22"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr22"
$ Attr23: num [1:210, 1] 0.00645 0.00635 -0.00788 0.02639 0.02388 ...
..- attr(*, "scaled:center")= Named num -0.00328
.. ..- attr(*, "names")= chr "Attr23"
..- attr(*, "scaled:scale")= Named num 1.11
.. ..- attr(*, "names")= chr "Attr23"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr23"
$ Attr24: num [1:210, 1] 0.04278 -0.02519 -0.02057 -0.00503 0.07585 ...
..- attr(*, "scaled:center")= Named num -0.0116
.. ..- attr(*, "names")= chr "Attr24"
..- attr(*, "scaled:scale")= Named num 1.1
.. ..- attr(*, "names")= chr "Attr24"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr24"
$ Attr25: num [1:210, 1] 0.1216 0.0206 -0.1642 -0.1792 -0.2608 ...
..- attr(*, "scaled:center")= Named num 0.00658
.. ..- attr(*, "names")= chr "Attr25"
..- attr(*, "scaled:scale")= Named num 1.36
.. ..- attr(*, "names")= chr "Attr25"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr25"
$ Attr26: num [1:210, 1] -0.363 -0.381 -0.525 -0.408 -0.119 ...
..- attr(*, "scaled:center")= Named num 0.00499
.. ..- attr(*, "names")= chr "Attr26"
..- attr(*, "scaled:scale")= Named num 0.985
.. ..- attr(*, "names")= chr "Attr26"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr26"
$ Attr27: num [1:210, 1] -0.0112 -0.0112 -0.0112 -0.0112 -0.011 ...
..- attr(*, "scaled:center")= Named num 0.00505
.. ..- attr(*, "names")= chr "Attr27"
..- attr(*, "scaled:scale")= Named num 1.34
.. ..- attr(*, "names")= chr "Attr27"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr27"
$ Attr28: num [1:210, 1] -0.0251 -0.0269 -0.0157 0.1586 -0.0274 ...
..- attr(*, "scaled:center")= Named num -0.00324
.. ..- attr(*, "names")= chr "Attr28"
..- attr(*, "scaled:scale")= Named num 0.644
.. ..- attr(*, "names")= chr "Attr28"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr28"
$ Attr29: num [1:210, 1] 0.1893 -0.4297 -0.2848 0.0177 -0.3836 ...
..- attr(*, "scaled:center")= Named num 0.000412
.. ..- attr(*, "names")= chr "Attr29"
..- attr(*, "scaled:scale")= Named num 1.01
.. ..- attr(*, "names")= chr "Attr29"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr29"
$ Attr30: num [1:210, 1] -0.01908 -0.04086 0.01493 -0.00548 -0.03526 ...
..- attr(*, "scaled:center")= Named num -0.00759
.. ..- attr(*, "names")= chr "Attr30"
..- attr(*, "scaled:scale")= Named num 0.361
.. ..- attr(*, "names")= chr "Attr30"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr30"
$ Attr31: num [1:210, 1] -0.001883 -0.001719 0.000399 0.033599 0.019399 ...
..- attr(*, "scaled:center")= Named num -0.00328
.. ..- attr(*, "names")= chr "Attr31"
..- attr(*, "scaled:scale")= Named num 1.06
.. ..- attr(*, "names")= chr "Attr31"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr31"
$ Attr32: num [1:210, 1] -0.037151 -0.041428 -0.000253 -0.015294 -0.031527 ...
..- attr(*, "scaled:center")= Named num -0.00688
.. ..- attr(*, "names")= chr "Attr32"
..- attr(*, "scaled:scale")= Named num 0.421
.. ..- attr(*, "names")= chr "Attr32"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr32"
$ Attr33: num [1:210, 1] -0.0427 0.0954 -0.4235 -0.3429 -0.1628 ...
..- attr(*, "scaled:center")= Named num 0.0227
.. ..- attr(*, "names")= chr "Attr33"
..- attr(*, "scaled:scale")= Named num 1.18
.. ..- attr(*, "names")= chr "Attr33"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr33"
$ Attr34: num [1:210, 1] -0.611 -0.617 -0.246 -0.152 0.544 ...
..- attr(*, "scaled:center")= Named num 0.0119
.. ..- attr(*, "names")= chr "Attr34"
..- attr(*, "scaled:scale")= Named num 1.1
.. ..- attr(*, "names")= chr "Attr34"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr34"
$ Attr35: num [1:210, 1] -0.2844 -0.3064 -0.3535 0.1159 0.0234 ...
..- attr(*, "scaled:center")= Named num -0.0041
.. ..- attr(*, "names")= chr "Attr35"
..- attr(*, "scaled:scale")= Named num 1.16
.. ..- attr(*, "names")= chr "Attr35"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr35"
$ Attr36: num [1:210, 1] -0.563 1.202 -0.649 -0.264 0.436 ...
..- attr(*, "scaled:center")= Named num 0.00934
.. ..- attr(*, "names")= chr "Attr36"
..- attr(*, "scaled:scale")= Named num 1.09
.. ..- attr(*, "names")= chr "Attr36"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr36"
$ Attr37: num [1:210, 1] -0.0312 -0.0304 -0.031 -0.0309 -0.0244 ...
..- attr(*, "scaled:center")= Named num 0.00543
.. ..- attr(*, "names")= chr "Attr37"
..- attr(*, "scaled:scale")= Named num 1.29
.. ..- attr(*, "names")= chr "Attr37"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr37"
$ Attr38: num [1:210, 1] 0.0324 -0.0297 -0.0155 -0.0222 -0.0467 ...
..- attr(*, "scaled:center")= Named num 0.00747
.. ..- attr(*, "names")= chr "Attr38"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr38"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr38"
$ Attr39: num [1:210, 1] -0.00443 -0.01573 -0.01482 0.03684 0.00877 ...
..- attr(*, "scaled:center")= Named num -0.000878
.. ..- attr(*, "names")= chr "Attr39"
..- attr(*, "scaled:scale")= Named num 0.903
.. ..- attr(*, "names")= chr "Attr39"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr39"
$ Attr40: num [1:210, 1] -0.1816 -0.2105 -0.1962 -0.0996 -0.1838 ...
..- attr(*, "scaled:center")= Named num -0.00199
.. ..- attr(*, "names")= chr "Attr40"
..- attr(*, "scaled:scale")= Named num 0.709
.. ..- attr(*, "names")= chr "Attr40"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr40"
$ Attr41: num [1:210, 1] -0.00929 -0.00268 0.02906 -0.00219 -0.01993 ...
..- attr(*, "scaled:center")= Named num -0.00731
.. ..- attr(*, "names")= chr "Attr41"
..- attr(*, "scaled:scale")= Named num 0.00495
.. ..- attr(*, "names")= chr "Attr41"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr41"
$ Attr42: num [1:210, 1] 0.0015 -0.00588 -0.00209 0.02464 0.01516 ...
..- attr(*, "scaled:center")= Named num -0.00506
.. ..- attr(*, "names")= chr "Attr42"
..- attr(*, "scaled:scale")= Named num 1.08
.. ..- attr(*, "names")= chr "Attr42"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr42"
$ Attr43: num [1:210, 1] -0.0341 -0.0968 0.184 0.1228 -0.0683 ...
..- attr(*, "scaled:center")= Named num -0.0106
.. ..- attr(*, "names")= chr "Attr43"
..- attr(*, "scaled:scale")= Named num 0.125
.. ..- attr(*, "names")= chr "Attr43"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr43"
$ Attr44: num [1:210, 1] -0.1705 -0.0734 0.0889 0.0698 -0.0663 ...
..- attr(*, "scaled:center")= Named num -0.01
.. ..- attr(*, "names")= chr "Attr44"
..- attr(*, "scaled:scale")= Named num 0.0633
.. ..- attr(*, "names")= chr "Attr44"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr44"
$ Attr45: num [1:210, 1] 0.00706 0.00711 0.00697 0.00722 0.00763 ...
..- attr(*, "scaled:center")= Named num -0.00614
.. ..- attr(*, "names")= chr "Attr45"
..- attr(*, "scaled:scale")= Named num 1.41
.. ..- attr(*, "names")= chr "Attr45"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr45"
$ Attr46: num [1:210, 1] -0.305 -0.144 -0.198 -0.09 -0.191 ...
..- attr(*, "scaled:center")= Named num 0.00311
.. ..- attr(*, "names")= chr "Attr46"
..- attr(*, "scaled:scale")= Named num 0.889
.. ..- attr(*, "names")= chr "Attr46"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr46"
$ Attr47: num [1:210, 1] -0.000812 -0.039887 0.032025 0.017807 -0.030507 ...
..- attr(*, "scaled:center")= Named num -0.00467
.. ..- attr(*, "names")= chr "Attr47"
..- attr(*, "scaled:scale")= Named num 0.84
.. ..- attr(*, "names")= chr "Attr47"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr47"
$ Attr48: num [1:210, 1] -0.1672 -0.2067 -0.1346 0.2289 0.0541 ...
..- attr(*, "scaled:center")= Named num -0.00641
.. ..- attr(*, "names")= chr "Attr48"
..- attr(*, "scaled:scale")= Named num 1.18
.. ..- attr(*, "names")= chr "Attr48"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr48"
$ Attr49: num [1:210, 1] 0.00452 0.01281 0.00791 0.04762 0.02604 ...
..- attr(*, "scaled:center")= Named num -0.000638
.. ..- attr(*, "names")= chr "Attr49"
..- attr(*, "scaled:scale")= Named num 1.02
.. ..- attr(*, "names")= chr "Attr49"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr49"
$ Attr50: num [1:210, 1] -0.479 -0.329 -0.315 -0.161 -0.314 ...
..- attr(*, "scaled:center")= Named num 0.00098
.. ..- attr(*, "names")= chr "Attr50"
..- attr(*, "scaled:scale")= Named num 0.991
.. ..- attr(*, "names")= chr "Attr50"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr50"
$ Attr51: num [1:210, 1] -0.747 0.466 0.254 0.377 0.536 ...
..- attr(*, "scaled:center")= Named num -0.00185
.. ..- attr(*, "names")= chr "Attr51"
..- attr(*, "scaled:scale")= Named num 1.05
.. ..- attr(*, "names")= chr "Attr51"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr51"
$ Attr52: num [1:210, 1] -0.03545 -0.03983 0.00235 -0.01306 -0.02969 ...
..- attr(*, "scaled:center")= Named num -0.00729
.. ..- attr(*, "names")= chr "Attr52"
..- attr(*, "scaled:scale")= Named num 0.412
.. ..- attr(*, "names")= chr "Attr52"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr52"
$ Attr53: num [1:210, 1] -0.0501 -0.0448 -0.0529 0.1188 -0.0403 ...
..- attr(*, "scaled:center")= Named num -0.00795
.. ..- attr(*, "names")= chr "Attr53"
..- attr(*, "scaled:scale")= Named num 0.328
.. ..- attr(*, "names")= chr "Attr53"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr53"
$ Attr54: num [1:210, 1] -0.0239 -0.0254 -0.0137 0.162 -0.028 ...
..- attr(*, "scaled:center")= Named num -0.00311
.. ..- attr(*, "names")= chr "Attr54"
..- attr(*, "scaled:scale")= Named num 0.648
.. ..- attr(*, "names")= chr "Attr54"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr54"
$ Attr55: num [1:210, 1] -0.078 -0.1392 -0.0791 0.0692 -0.142 ...
..- attr(*, "scaled:center")= Named num -0.00881
.. ..- attr(*, "names")= chr "Attr55"
..- attr(*, "scaled:scale")= Named num 0.819
.. ..- attr(*, "names")= chr "Attr55"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr55"
$ Attr56: num [1:210, 1] -0.0274 -0.0341 -0.0331 0.0185 -0.0095 ...
..- attr(*, "scaled:center")= Named num 0.0098
.. ..- attr(*, "names")= chr "Attr56"
..- attr(*, "scaled:scale")= Named num 0.0174
.. ..- attr(*, "names")= chr "Attr56"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr56"
$ Attr57: num [1:210, 1] -0.00384 -0.00274 -0.01585 0.05083 0.01792 ...
..- attr(*, "scaled:center")= Named num 0.00521
.. ..- attr(*, "names")= chr "Attr57"
..- attr(*, "scaled:scale")= Named num 0.719
.. ..- attr(*, "names")= chr "Attr57"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr57"
$ Attr58: num [1:210, 1] 0.01015 0.01459 0.02566 -0.01003 -0.00298 ...
..- attr(*, "scaled:center")= Named num -0.00975
.. ..- attr(*, "names")= chr "Attr58"
..- attr(*, "scaled:scale")= Named num 0.0261
.. ..- attr(*, "names")= chr "Attr58"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr58"
$ Attr59: num [1:210, 1] -0.02551 -0.03385 0.00937 0.0887 -0.04349 ...
..- attr(*, "scaled:center")= Named num -0.00266
.. ..- attr(*, "names")= chr "Attr59"
..- attr(*, "scaled:scale")= Named num 0.467
.. ..- attr(*, "names")= chr "Attr59"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr59"
$ Attr60: num [1:210, 1] -0.0395 -0.0228 -0.0407 -0.0402 -0.0339 ...
..- attr(*, "scaled:center")= Named num 0.00455
.. ..- attr(*, "names")= chr "Attr60"
..- attr(*, "scaled:scale")= Named num 1.25
.. ..- attr(*, "names")= chr "Attr60"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr60"
$ Attr61: num [1:210, 1] 0.7799 -0.0802 -0.2387 -0.2299 -0.0949 ...
..- attr(*, "scaled:center")= Named num 0.0143
.. ..- attr(*, "names")= chr "Attr61"
..- attr(*, "scaled:scale")= Named num 1.17
.. ..- attr(*, "names")= chr "Attr61"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr61"
$ Attr62: num [1:210, 1] -0.0298 -0.0343 0.0109 -0.0089 -0.0244 ...
..- attr(*, "scaled:center")= Named num -0.00686
.. ..- attr(*, "names")= chr "Attr62"
..- attr(*, "scaled:scale")= Named num 0.277
.. ..- attr(*, "names")= chr "Attr62"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr62"
$ Attr63: num [1:210, 1] -0.0874 0.0385 -0.4535 -0.3553 -0.1911 ...
..- attr(*, "scaled:center")= Named num 0.0208
.. ..- attr(*, "names")= chr "Attr63"
..- attr(*, "scaled:scale")= Named num 1.12
.. ..- attr(*, "names")= chr "Attr63"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr63"
$ Attr64: num [1:210, 1] -0.0424 -0.0127 -0.0344 0.1364 -0.0235 ...
..- attr(*, "scaled:center")= Named num -0.00398
.. ..- attr(*, "names")= chr "Attr64"
..- attr(*, "scaled:scale")= Named num 0.931
.. ..- attr(*, "names")= chr "Attr64"
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:210] "3960" "2136" "3338" "7156" ...
.. ..$ : chr "Attr64"
$ class : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
- attr(*, "groups")= tibble [2 × 2] (S3: tbl_df/tbl/data.frame)
..$ class: Factor w/ 2 levels "0","1": 1 2
..$ .rows: list<int> [1:2]
.. ..$ : int [1:205] 1 2 3 4 5 6 7 8 9 10 ...
.. ..$ : int [1:5] 206 207 208 209 210
.. ..@ ptype: int(0)
..- attr(*, ".drop")= logi TRUE
bankruptcy_test <- ungroup(bankruptcy_test)
dim(bankruptcy_test)
[1] 210 65
bankruptcy_test_x <- select(bankruptcy_test, -class)
dim(bankruptcy_test_x)
[1] 210 64
posterior <- posterior_predict(post1, newdata = bankruptcy_test_x)
dim(posterior)
[1] 4000 210
hist(posterior)

bankruptcy_test$class
[1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[43] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[85] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[127] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[169] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
Levels: 0 1
j <- filter(bankruptcy_test, class==1)
dim(j)
[1] 4 65
pred <- colMeans(posterior)
pr <- as.integer(pred >= 0.5)
table(pr)
pr
0 1
208 2
true_pr <- bankruptcy_test$class
table(true_pr)
true_pr
0 1
206 4
table(true_pr, pr)
pr
true_pr 0 1
0 204 2
1 4 0
library(MLmetrics)
Attaching package: ‘MLmetrics’
The following objects are masked from ‘package:caret’:
MAE, RMSE
The following object is masked from ‘package:base’:
Recall
ConfusionMatrix(pr, true_pr)
y_pred
y_true 0 1
0 204 2
1 4 0
Precision(true_pr, pr)
[1] 0.9807692
Recall(true_pr, pr)
[1] 0.9902913
LS0tCnRpdGxlOiAiUiBOb3RlYm9vayIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKYGBge3J9CnNldC5zZWVkKDQyKQpgYGAKCgpgYGB7cn0KbGlicmFyeShkcGx5cikKYGBgCgoKYGBge3J9CnNldHdkKCJ+L1Byb2plY3RzL2NvbXBhbmllcy1iYW5rcnVwdGN5LWZvcmVjYXN0L3NyYyIpCmBgYAoKIyBSZWFkIGFsbCB0aGUgZGF0YQpgYGB7cn0KYmFua3J1cHRjeV9kYXRhIDwtIHJlYWQuY3N2KCcuLi9kYXRhL2JhbmtydXB0Y3lfVHJhaW4uY3N2JykKaGVhZChiYW5rcnVwdGN5X2RhdGEpCmBgYAoKYGBge3J9CiNzdW1tYXJ5KGJhbmtydXB0Y3lfZGF0YSkKYGBgCgoKIyBQcmUtcHJvY2VzcyA6IFNjYWxlIHRoZSBkYXRhCgpgYGB7cn0KbmEub21pdChiYW5rcnVwdGN5X2RhdGEpCmBgYAoKCmBgYHtyfQojIHJlbW92aW5nIHRob3NlIG9ic2VydmF0aW9uIHJvd3Mgd2l0aCAwIGluIGFueSBvZiB0aGUgdmFyaWFibGVzCmZvciAoaSBpbiAxOjY0KSB7CiAgICAgIGJhbmtydXB0Y3lfZGF0YSA8LSBiYW5rcnVwdGN5X2RhdGFbd2hpY2goYmFua3J1cHRjeV9kYXRhWywgaV0gIT0gMCksIF0KfQpgYGAKCmBgYHtyfQpkaW0oYmFua3J1cHRjeV9kYXRhKQpgYGAKCgpgYGB7cn0KCiMgc2NhbGUgdGhlIGNvdmFyaWF0ZXMgZm9yIGVhc2llciBjb21wYXJpc29uIG9mIGNvZWZmaWNpZW50IHBvc3RlcmlvcnMKCmZvciAoaSBpbiAxOjY0KSB7CiAgICAgIGJhbmtydXB0Y3lfZGF0YVtpXSA8LSBzY2FsZShiYW5rcnVwdGN5X2RhdGFbaV0pCn0KCmBgYAoKCmBgYHtyfQpkaW0oYmFua3J1cHRjeV9kYXRhKQpgYGAKCiMjIE1ha2UgImNsYXNzIiB0byBiZSBmYWN0b3IgdHlwZSBhbmQgY3JlYXRlIHggYW5kIHkgdmFyaWFibGVzCgpgYGB7cn0KYmFua3J1cHRjeV9kYXRhJGNsYXNzIDwtIGZhY3RvcihiYW5rcnVwdGN5X2RhdGEkY2xhc3MpCiMgcHJlcGFyaW5nIHRoZSBpbnB1dHMKeCA8LSBtb2RlbC5tYXRyaXgoY2xhc3MgfiAuIC0gMSwgZGF0YSA9IGJhbmtydXB0Y3lfZGF0YSkKeSA8LSBiYW5rcnVwdGN5X2RhdGEkY2xhc3MKYGBgCgpgYGB7cn0KZGltKGJhbmtydXB0Y3lfZGF0YSkKaGVhZChiYW5rcnVwdGN5X2RhdGEpCmBgYAoKCiMgVGFrZSBzbWFsbGVyIGRhdGFzZXQgc2FtcGxlIGZvciBkZXZlbG9wbWVudCBwdXJwb3NlCgpgYGB7cn0KYmFua3J1cHRjeV9zbWFsbCA8LSBiYW5rcnVwdGN5X2RhdGEgJT4lIGdyb3VwX2J5KGNsYXNzKSAlPiUgc2FtcGxlX2ZyYWMoLjA4KQpzdHIoYmFua3J1cHRjeV9zbWFsbCkKYGBgCgoKYGBge3J9CnR5cGVvZihiYW5rcnVwdGN5X2RhdGEpCmBgYAoKCgpgYGB7cn0KdGFibGUoYmFua3J1cHRjeV9zbWFsbCRjbGFzcykKYGBgCgpgYGB7cn0KYmFua3J1cHRjeV90cmFpbiA8LSBiYW5rcnVwdGN5X3NtYWxsICU+JSBncm91cF9ieShjbGFzcykgJT4lIHNhbXBsZV9mcmFjKC43MCkKYmFua3J1cHRjeV90cmFpbgpgYGAKCgpgYGB7cn0KdGFibGUoYmFua3J1cHRjeV90cmFpbiRjbGFzcykKYGBgCgoKCmBgYHtyfQpiYW5rcnVwdGN5X3Rlc3QgPC0gYW50aV9qb2luKGJhbmtydXB0Y3lfc21hbGwgJT4lIGdyb3VwX2J5KGNsYXNzKSAlPiUgc2FtcGxlX2ZyYWMoLjkwKSwgYmFua3J1cHRjeV90cmFpbikKYmFua3J1cHRjeV90ZXN0CmBgYAoKYGBge3J9CnRhYmxlKGJhbmtydXB0Y3lfdGVzdCRjbGFzcykKYGBgCgojIEdldCBkaW1lbnNpb25zCmBgYHtyfQoKbj1kaW0oYmFua3J1cHRjeV90cmFpbilbMV0KcD1kaW0oYmFua3J1cHRjeV90cmFpbilbMl0KI3N0cihiYW5rcnVwdGN5X3RyYWluKQoKYGBgCgoKYGBge3J9CmRpbShiYW5rcnVwdGN5X3RyYWluKQpgYGAKCmBgYHtyfQpuYW1lcyhiYW5rcnVwdGN5X3RyYWluKQpgYGAKCgpgYGB7cn0KdHlwZW9mKGJhbmtydXB0Y3lfdHJhaW4pCmBgYAoKCiMgQSBCYXllc2lhbiBsb2dpc3RpYyByZWdyZXNzaW9uIG1vZGVsIAoKCgpgYGB7cn0KbGlicmFyeSh0aWR5dmVyc2UpCmxpYnJhcnkoY2FyZXQpCmxpYnJhcnkoR0dhbGx5KQpsaWJyYXJ5KGdncGxvdDIpCmxpYnJhcnkoY29ycnBsb3QpCmxpYnJhcnkoYmF5ZXNwbG90KQp0aGVtZV9zZXQoYmF5ZXNwbG90Ojp0aGVtZV9kZWZhdWx0KGJhc2VfZmFtaWx5ID0gInNhbnMiKSkKbGlicmFyeShyc3RhbmFybSkKb3B0aW9ucyhtYy5jb3JlcyA9IHBhcmFsbGVsOjpkZXRlY3RDb3JlcygpKQpsaWJyYXJ5KGxvbykKbGlicmFyeShwcm9qcHJlZCkKU0VFRD00MgpgYGAKYGBge3J9CmxpYnJhcnkoYnJvb20pCmBgYAoKCmBgYHtyfQp0X3ByaW9yIDwtIHN0dWRlbnRfdChkZiA9IDcsIGxvY2F0aW9uID0gMCwgc2NhbGUgPSAyLjUpCnBvc3QxIDwtIHN0YW5fZ2xtKGNsYXNzIH4gLiAsIGRhdGEgPSBiYW5rcnVwdGN5X3RyYWluLAogICAgICAgICAgICAgICAgIGZhbWlseSA9IGJpbm9taWFsKGxpbmsgPSAibG9naXQiKSwgCiAgICAgICAgICAgICAgICAgcHJpb3IgPSB0X3ByaW9yLCBwcmlvcl9pbnRlcmNlcHQgPSB0X3ByaW9yLAogICAgICAgICAgICAgICAgIHNlZWQgPSA0MikKYGBgCgpgYGB7cn0Kc3VtbWFyeShwb3N0MSkKYGBgCgoKIyBQUEMKCmBgYHtyfQpwcF9jaGVjayhwb3N0MSwgImRlbnNfb3ZlcmxheSIpCmBgYApgYGB7cn0KcHBfY2hlY2socG9zdDEsICJzdGF0IikKYGBgCgojIFRlc3QhISEhCgpgYGB7cn0KZGltKGJhbmtydXB0Y3lfdGVzdCkKYGBgCgpgYGB7cn0KdGFibGUoYmFua3J1cHRjeV90ZXN0JGNsYXNzKQpgYGAKCmBgYHtyfQpzdHIoYmFua3J1cHRjeV90ZXN0KQpgYGAKCgpgYGB7cn0KYmFua3J1cHRjeV90ZXN0IDwtIHVuZ3JvdXAoYmFua3J1cHRjeV90ZXN0KQpkaW0oYmFua3J1cHRjeV90ZXN0KQoKYmFua3J1cHRjeV90ZXN0X3ggPC0gc2VsZWN0KGJhbmtydXB0Y3lfdGVzdCwgLWNsYXNzKQpkaW0oYmFua3J1cHRjeV90ZXN0X3gpCgoKYGBgCgoKYGBge3J9CnBvc3RlcmlvciA8LSBwb3N0ZXJpb3JfcHJlZGljdChwb3N0MSwgbmV3ZGF0YSA9IGJhbmtydXB0Y3lfdGVzdF94KQoKYGBgCgpgYGB7cn0KZGltKHBvc3RlcmlvcikKYGBgCgpgYGB7cn0KaGlzdChwb3N0ZXJpb3IpCmBgYAoKYGBge3J9CmJhbmtydXB0Y3lfdGVzdCRjbGFzcwpgYGAKCgpgYGB7cn0KaiA8LSBmaWx0ZXIoYmFua3J1cHRjeV90ZXN0LCBjbGFzcz09MSkKZGltKGopCmBgYAoKYGBge3J9CnByZWQgPC0gY29sTWVhbnMocG9zdGVyaW9yKQpwciA8LSBhcy5pbnRlZ2VyKHByZWQgPj0gMC41KQpgYGAKCmBgYHtyfQp0YWJsZShwcikKYGBgCgpgYGB7cn0KdHJ1ZV9wciA8LSBiYW5rcnVwdGN5X3Rlc3QkY2xhc3MKdGFibGUodHJ1ZV9wcikKYGBgCgoKYGBge3J9CnRhYmxlKHRydWVfcHIsIHByKQpgYGAKCmBgYHtyfQpsaWJyYXJ5KE1MbWV0cmljcykKYGBgCgpgYGB7cn0KQ29uZnVzaW9uTWF0cml4KHByLCB0cnVlX3ByKQpgYGAKCmBgYHtyfQpQcmVjaXNpb24odHJ1ZV9wciwgcHIpCmBgYAoKYGBge3J9ClJlY2FsbCh0cnVlX3ByLCBwcikKYGBgCgo=